package jp.co.nes.awssupport.common.bean;

import java.math.BigDecimal;
import java.time.ZonedDateTime;

/**
 * キャンペーンプランです。
 */
public class CampaignPlanBean extends BaseBean {

    /** serialVersionUID */
    private static final long serialVersionUID = 1L;

    /** プランID */
    private String planId;

    /** 製品名 */
    private String productName;

    /** 使用タイプ */
    private String usageType;

    /** 係数 */
    private BigDecimal coefficient;

    /** 定数 */
    private BigDecimal constant;

    /** 説明 */
    private String description;

    /** 適用開始日時 */
    private ZonedDateTime startDate;

    /** 適用終了日時 */
    private ZonedDateTime endDate;

    /**
     * デフォルトコンストラクタです。
     */
    public CampaignPlanBean() {
    }

    /**
     * プランIDを返却します。
     *
     * @return プランID
     */
    public String getPlanId() {
        return planId;
    }

    /**
     * プランIDを設定します。
     *
     * @param planId プランID
     */
    public void setPlanId(String planId) {
        this.planId = planId;
    }

    /**
     * 製品名を返却します。
     *
     * @return 製品名
     */
    public String getProductName() {
        return productName;
    }

    /**
     * 製品名を設定します。
     *
     * @param productName 製品名
     */
    public void setProductName(String productName) {
        this.productName = productName;
    }

    /**
     * 使用タイプを返却します。
     *
     * @return 使用タイプ
     */
    public String getUsageType() {
        return usageType;
    }

    /**
     * 使用タイプを設定します。
     *
     * @param usageType 使用タイプ
     */
    public void setUsageType(String usageType) {
        this.usageType = usageType;
    }

    /**
     * 係数を返却します。
     *
     * @return 係数
     */
    public BigDecimal getCoefficient() {
        return coefficient;
    }

    /**
     * 係数を設定します。
     *
     * @param coefficient 係数
     */
    public void setCoefficient(BigDecimal coefficient) {
        this.coefficient = coefficient;
    }

    /**
     * 定数を返却します。
     *
     * @return 定数
     */
    public BigDecimal getConstant() {
        return constant;
    }

    /**
     * 定数を設定します。
     *
     * @param constant 定数
     */
    public void setConstant(BigDecimal constant) {
        this.constant = constant;
    }

    /**
     * 説明を返却します。
     *
     * @return 説明
     */
    public String getDescription() {
        return description;
    }

    /**
     * 説明を設定します。
     *
     * @param description 説明
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * 適用開始日時を返却します。
     *
     * @return 適用開始日時
     */
    public ZonedDateTime getStartDate() {
        return startDate;
    }

    /**
     * 適用開始日時を設定します。
     *
     * @param startDate 適用開始日時
     */
    public void setStartDate(ZonedDateTime startDate) {
        this.startDate = startDate;
    }

    /**
     * 適用終了日時を返却します。
     *
     * @return 適用終了日時
     */
    public ZonedDateTime getEndDate() {
        return endDate;
    }

    /**
     * 適用終了日時を設定します。
     *
     * @param endDate 適用終了日時
     */
    public void setEndDate(ZonedDateTime endDate) {
        this.endDate = endDate;
    }
}
